
package com.tyk.bookstore.back.product.service;

import com.tyk.bookstore.back.product.model.query.BookStatisticAddQuery;
import com.tyk.bookstore.back.product.model.query.BookStatisticPageQuery;
import com.tyk.bookstore.back.product.model.query.BookStatisticUpdateQuery;
import com.tyk.bookstore.back.product.model.vo.BookStatisticPageVo;
import com.tyk.bookstore.back.product.model.vo.BookStatisticVo;

import java.util.Set;

/**
 * @author tyk
 * @description 书籍统计信息
 */
public interface BookStatisticService {

    /**
     * 根据书籍统计信息ID获取书籍统计信息详情
     *
     * @param id 书籍统计信息ID
     * @return 书籍统计信息详情
     */
    BookStatisticVo getById(Long id);

    /**
     * 分页查询书籍统计信息
     *
     * @param query 查询参数
     * @return 书籍统计信息列表
     */
    BookStatisticPageVo getPage(BookStatisticPageQuery query);

    /**
     * 添加书籍统计信息
     * @param query 书籍统计信息信息
     */
    void add(BookStatisticAddQuery query);

    /**
     * 更新书籍统计信息
     * @param query 书籍统计信息信息
     */
    void updateById(BookStatisticUpdateQuery query);

    /**
     * 根据ID删除书籍统计信息
     * @param id 书籍统计信息ID
     */
    void deleteById(Long id);

    /**
     * 根据ID批量删除书籍统计信息
     * @param idSet 书籍统计信息ID集合
     */
    void deleteBatchByIdSet(Set<Long> idSet);

}

